home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 7 / Amiga Format AFCD07 (Dec 1996, Issue 91).iso / serious / shareware / programming / aros / devs / makefile < prev    next >
Makefile  |  1996-09-13  |  1KB  |  49 lines

  1. TOP=..
  2.  
  3. include $(TOP)/make.cfg
  4.  
  5. OBJDIR = $(GENDIR)/devs
  6.  
  7. DEVS = $(DEVSDIR)/ram.handler \
  8.     $(DEVSDIR)/nil.handler
  9.  
  10. FILES = console cdinputhandler rawkeyconvert
  11.  
  12. all: setup \
  13.     $(foreach f,$(FILES),$(OSGENDIR)/$(f).o) \
  14.     $(DEVS)
  15.  
  16. setup:
  17.     @if [ ! -d $(OSGENDIR) ]; then $(MKDIR) $(OSGENDIR) ; fi
  18.     @if [ ! -d $(OBJDIR) ]; then $(MKDIR) $(OBJDIR) ; fi
  19.     @if [ ! -d $(DEVSDIR) ]; then $(MKDIR) $(DEVSDIR) ; fi
  20.  
  21. clean:
  22.     $(RM) $(OSGENDIR)
  23.     $(RM) $(DEVSDIR)
  24.  
  25. $(OSGENDIR)/%.o: %.c
  26.     $(CC) $(CFLAGS) $< -c -o $@ 2>&1|tee $*.err
  27.     if test ! -s $*.err; then rm $*.err; fi
  28.  
  29. $(OBJDIR)/%.o: %.c
  30.     $(CC) $(CFLAGS) -c $< -o $@
  31.  
  32. $(DEVSDIR)/%.handler: $(OBJDIR)/%_handler.o
  33.     $(CC) $(ILDFLAGS) $< -o $@
  34.  
  35. $(OSGENDIR)/%.d: %.c
  36.     @if [ ! -d $(OSGENDIR) ]; then $(MKDIR) $(OSGENDIR) ; fi
  37.     @$(RM) $@
  38.     @touch $@
  39.     $(MKDEPEND) -f$@ -p$(OSGENDIR)/ -- $(CFLAGS) -- $^
  40.  
  41. $(OBJDIR)/%.d: %.c
  42.     @if [ ! -d $(OBJDIR) ]; then $(MKDIR) $(OBJDIR) ; fi
  43.     @$(RM) $@
  44.     @touch $@
  45.     $(MKDEPEND) -f$@ -p$(OBJDIR)/ -- $(CFLAGS) -- $^
  46.  
  47. include $(foreach f,$(FILES),$(OSGENDIR)/$(f).d)
  48. include $(OBJDIR)/ram_handler.d $(OBJDIR)/nil_handler.d
  49.